home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 February / Macworld (1999-02).dmg / Games World / SharewareGames / Xconq 7.2.2 / lib / empire.g < prev    next >
Text File  |  1998-05-22  |  23KB  |  830 lines

  1. (game-module "empire"
  2.   (title "Empire")
  3.   (blurb "The classic big economic/military game")
  4.   (variants
  5.    (world-seen false)
  6.    (see-all false)
  7.    ("Only One Winner" one-winner true
  8.      (true
  9.       (scorekeeper (do last-side-wins))
  10.       ))
  11.    ("More Starters" more-starters true
  12.      (true
  13.       (add harbor start-with 1)
  14.       ))
  15.    )
  16.   )
  17.  
  18. (unit-type infantry (image-name "soldiers"))
  19. (unit-type motor-infantry (image-name "truck"))
  20. (unit-type mech-infantry (image-name "halftrack-2"))
  21. (unit-type marines (image-name "elite"))
  22. (unit-type security (image-name "police"))
  23. (unit-type cavalry (image-name "cavalry"))
  24. (unit-type light-armor (image-name "maultier"))
  25. (unit-type armor (image-name "pz-4"))
  26. (unit-type heavy-armor (image-name "tiger-1"))
  27. (unit-type artillery (image-name "arty"))
  28. (unit-type light-artillery (image-name "field-gun"))
  29. (unit-type heavy-artillery (image-name "arty"))
  30. (unit-type mech-artillery (image-name "arty"))
  31. (unit-type aa (image-name "flak"))
  32. (unit-type supply (image-name "cart"))
  33. (unit-type engineers (image-name "worker"))
  34. (unit-type mech-engineers (image-name "tractor"))
  35. (unit-type mobile-radar (image-name "radar"))
  36.  
  37. (define infantry-types (infantry motor-infantry mech-infantry marines security))
  38.  
  39. (define armor-types (light-armor armor heavy-armor))
  40.  
  41. (define artillery-types (artillery light-artillery heavy-artillery mech-artillery aa))
  42.  
  43. (define engineer-types (engineers mech-engineers))
  44.  
  45. (define land-types
  46.   (append infantry-types cavalry armor-types artillery-types
  47.    supply engineers mech-engineers mobile-radar
  48.    ))
  49.  
  50. (add infantry-types acp-per-turn (2 3 3 2 2))
  51. (add armor-types acp-per-turn (3 3 3))
  52. (add artillery-types acp-per-turn (2 2 2 3 2))
  53. (add engineer-types acp-per-turn (2 3))
  54. (add mobile-radar acp-per-turn 2)
  55.  
  56. (unit-type fishing-boat (image-name "ap"))
  57.  
  58. (unit-type cargo-ship (image-name "ap"))
  59. (unit-type tanker (image-name "ap"))
  60. (unit-type ore-ship (image-name "ap"))
  61. (unit-type slave-ship (image-name "ap"))
  62. (unit-type troop-transport (image-name "ap"))
  63. (unit-type landing-craft (image-name "ap"))
  64.  
  65. (unit-type torpedo-boat (image-name "dd"))
  66. (unit-type destroyer (image-name "dd"))
  67. (unit-type frigate (image-name "dd"))
  68. (unit-type light-cruiser (image-name "ca"))
  69. (unit-type heavy-cruiser (image-name "ca"))
  70. (unit-type battleship (image-name "bb"))
  71.  
  72. (unit-type light-carrier (image-name "cv"))
  73. (unit-type escort-carrier (image-name "cv"))
  74. (unit-type carrier (image-name "cv"))
  75. (unit-type missile-frigate (image-name "dd"))
  76. (unit-type missile-cruiser (image-name "ca"))
  77.  
  78. (unit-type submarine (image-name "sub"))
  79. (unit-type asw-cruiser (image-name "ca"))
  80. (unit-type minesweeper (image-name "ap"))
  81.  
  82. (define production-ship-types (fishing-boat))
  83.  
  84. (define material-transport-ship-types (cargo-ship tanker ore-ship slave-ship))
  85.  
  86. (define transport-ship-types (troop-transport landing-craft))
  87.  
  88. (define surface-combat-ship-types
  89.   (torpedo-boat destroyer frigate light-cruiser heavy-cruiser battleship))
  90.  
  91. (define carrier-ship-types
  92.   (light-carrier escort-carrier carrier))
  93.  
  94. (define air-combat-ship-types
  95.   (light-carrier escort-carrier carrier missile-frigate missile-cruiser))
  96.  
  97. (define ship-types
  98.   (append production-ship-types material-transport-ship-types
  99.    transport-ship-types surface-combat-ship-types air-combat-ship-types
  100.    submarine asw-cruiser minesweeper
  101.    ))
  102.  
  103. (add ship-types acp-per-turn 4)
  104. ; are these correct for empire?
  105. ;(add material-transport-ship-types acp-per-turn 3)
  106. ;(add transport-ship-types acp-per-turn (4 2))
  107. ;(add surface-combat-ship-types acp-per-turn (4 4 4 3 4 3))
  108. ;(add air-combat-ship-types acp-per-turn 4)
  109. ;(add submarine acp-per-turn 3)
  110. ;(add asw-cruiser acp-per-turn 4)
  111. ;(add minesweeper acp-per-turn 3)
  112.  
  113. (unit-type fighter-1 (image-name "fighter"))
  114. (unit-type fighter-2 (image-name "fighter"))
  115. (unit-type escort (image-name "fighter"))
  116. (unit-type naval-fighter (image-name "fighter"))
  117. (unit-type light-bomber (image-name "4e"))
  118. (unit-type medium-bomber (image-name "4e"))
  119. (unit-type heavy-bomber (image-name "4e"))
  120. (unit-type airlifter (image-name "airlifter"))
  121. (unit-type attack-helicopter (image-name "helicopter"))
  122. (unit-type transport-helicopter (image-name "cargo-chopper"))
  123. (unit-type recon-plane (image-name "cruise"))
  124. (unit-type asw-plane (image-name "4e"))
  125. (unit-type missile (image-name "missile"))
  126. (unit-type icbm (image-name "icbm"))
  127. (unit-type sam (image-name "sam"))
  128. (unit-type abm (image-name "missile-2"))
  129.  
  130. (define fighter-types (fighter-1 fighter-2 escort naval-fighter))
  131.  
  132. (define bomber-types (light-bomber medium-bomber heavy-bomber))
  133.  
  134. (define helicopter-types (attack-helicopter transport-helicopter))
  135.  
  136. (define missile-types (missile icbm sam abm))
  137.  
  138. (define plane-types
  139.   (append fighter-types
  140.    bomber-types
  141.    airlifter
  142.    helicopter-types
  143.    recon-plane asw-plane
  144.    missile-types
  145.    ))
  146.  
  147. ;; These are twice the plane's "range" in Empire.
  148.  
  149. (add plane-types acp-per-turn 16)
  150.  
  151. ;(add helicopter-types acp-per-turn (12 10))
  152. ;(add transport acp-per-turn 14)
  153. ;(add recon-plane acp-per-turn 18)
  154. ;(add asw-plane acp-per-turn 16)
  155.  
  156. (add bomber-types acp-per-turn (24 48 60))
  157.  
  158. ;; But missiles are one-way, so acp is comparable.
  159.  
  160. (add missile-types acp-per-turn (8 40 8 20))
  161.  
  162. (unit-type small-nuke (image-name "bomb"))
  163. (unit-type medium-nuke (image-name "bomb"))
  164. (unit-type large-nuke (image-name "bomb"))
  165.  
  166. (define nuke-types (small-nuke medium-nuke large-nuke))
  167.  
  168. (add nuke-types acp-per-turn 1)
  169.  
  170. ;; The remaining types are actually "sector types" in Empire, but
  171. ;; they work better as cell-filling unit types in Xconq.
  172. ;; Bridges can be highways over water, not needed as units.
  173.  
  174. (unit-type radar (image-name "radar") (char ")")
  175.   (help "fixed radar station - has a long-range view"))
  176. (unit-type mines (image-name "minefield")
  177.   (help "useful for blocking land and sea passages"))
  178.  
  179. (define inert-types (radar mines))
  180.  
  181. (add inert-types acp-per-turn 0)
  182.  
  183. (unit-type agribusiness (image-name "barn") (char "a"))
  184. (unit-type oil-field (image-name "oil-derrick") (char "o"))
  185. (unit-type oil-platform (image-name "oil-derrick"))
  186. (unit-type mine (image-name "iron-mine") (char "m"))
  187. (unit-type gold-mine (image-name "gold-mine") (char "g"))
  188. (unit-type uranium-mine (image-name "uranium-mine") (char "u"))
  189.  
  190. (unit-type technical-center (image-name "facility") (char "t"))
  191. (unit-type fortress  (image-name "fort-2") (char "f"))
  192. (unit-type research-lab (image-name "facility") (char "r"))
  193. (unit-type nuclear-plant (image-name "facility") (char "n"))
  194. (unit-type library/school (image-name "facility") (char "l"))
  195. (unit-type park (image-name "facility") (char "p"))
  196. (unit-type enlistment (image-name "facility") (char "e"))
  197. (unit-type headquarters (image-name "corps-hq") (char "!"))
  198.  
  199. (unit-type harbor (image-name "anchor") (char "h"))
  200. (unit-type airfield (image-name "airbase") (char "*"))
  201. (unit-type refinery (image-name "refinery") (char "%"))
  202. (unit-type lcm-factory (image-name "facility") (char "j"))
  203. (unit-type hcm-factory (image-name "facility") (char "k"))
  204. (unit-type defense-plant (image-name "facility") (char "d"))
  205. (unit-type shell-industry (image-name "shell") (char "i"))
  206. (unit-type warehouse (image-name "facility") (char "w"))
  207.  
  208. (unit-type bank (image-name "bank") (char "b"))
  209.  
  210. (define facility-types
  211.   (agribusiness oil-field oil-platform mine gold-mine uranium-mine
  212.    bank
  213.    technical-center fortress research-lab
  214.    nuclear-plant
  215.    library/school park enlistment
  216.    headquarters harbor airfield
  217.    refinery lcm-factory hcm-factory defense-plant shell-industry warehouse))
  218.  
  219. ;;; Most facilities only produce or store materials, have no use for acp.
  220.  
  221. (add facility-types acp-per-turn 0)
  222.  
  223. ;;; These build units, however, and need acp to do so.
  224.  
  225. (add (nuclear-plant headquarters harbor airfield) acp-per-turn 1)
  226.  
  227. (add (refinery) acp-per-turn 1)
  228.  
  229. ;;; Fortresses can engage in combat.
  230.  
  231. (add fortress acp-per-turn 1)
  232.  
  233. (unit-type capital (image-name "city20") (char "c")
  234.   (help "center of the country"))
  235.  
  236. (add capital acp-per-turn 3)
  237.  
  238. (material-type food (char "f")
  239.   (help "food"))
  240. (material-type sh (char "s")
  241.   (help "shells - ammunition for guns"))
  242. (material-type gun (char "g")
  243.   (help "guns"))
  244. (material-type pet (char "p")
  245.   (help "petroleum - refined oil, used as fuel"))
  246. (material-type iron (char "i")
  247.   (help "iron ore"))
  248. (material-type dust (char "d")
  249.   (help "gold dust - as mined from the ground"))
  250. (material-type gold (char "b")
  251.   (help "gold - refined gold, in bars"))
  252. (material-type oil (char "o")
  253.   (help "crude oil"))
  254. (material-type lcm (char "l")
  255.   (help "light construction materials"))
  256. (material-type hcm (char "h")
  257.   (help "heavy construction materials"))
  258. (material-type rad (char "r")
  259.   (help "rads - radioactive materials"))
  260. (material-type education
  261.   (help "a class of graduates"))
  262. (material-type happiness
  263.   (help "happy strollers"))
  264. (material-type civ
  265.   (help "civilians"))
  266. (material-type mil
  267.   (help "military"))
  268. (material-type uw
  269.   (help "uncompensated workers (slaves, really)"))
  270.  
  271. (define raw (iron dust oil rad))
  272. (define manufactures (food sh gun pet lcm hcm gold))
  273. (define peoples (civ mil uw))
  274.  
  275. (add peoples people 1)
  276.  
  277. (terrain-type sea (char "."))
  278. (terrain-type settled (image-name "clear") (char "-"))
  279. (terrain-type wilderness (image-name "forest") (char "-"))
  280. (terrain-type mountains (char "^"))
  281. (terrain-type wasteland (image-name "orange") (char "/")
  282.   (help "uninhabitable due to radioactivity"))
  283. (terrain-type highway (image-name "road") (char "+")
  284.   (subtype connection))
  285.  
  286. (define land-t* (settled wilderness mountains wasteland highway))
  287.  
  288. (add sea liquid true)
  289.  
  290. ;;; Static relationships.
  291.  
  292. ;; Unit vs unit.
  293.  
  294. (table unit-capacity-x
  295.   ;; Engineers can be inside any facility.
  296.   (facility-types engineer-types 1)
  297.   )
  298.  
  299. (add transport-ship-types capacity (6 3))
  300. (add carrier-ship-types capacity (4 4 8))
  301. (add bomber-types capacity (1 3 9))
  302. (add missile-types capacity (1 9 0 0))
  303. (add headquarters capacity 8)
  304. (add harbor capacity 8)
  305. (add airfield capacity 8)
  306. (add nuclear-plant capacity 8)
  307. (add fortress capacity 8)
  308. (add capital capacity 16)
  309.  
  310. (table unit-size-as-occupant
  311.   (u* u* 100)
  312.   (land-types transport-ship-types 1)
  313.   (land-types headquarters 1)
  314.   (land-types fortress 1)
  315.   (ship-types harbor 1)
  316.   (naval-fighter carrier-ship-types 1)
  317.   (helicopter-types carrier-ship-types 1)
  318.   ((recon-plane asw-plane) carrier-ship-types 1)
  319.   (plane-types airfield 1)
  320.   (small-nuke bomber-types 1)
  321.   (medium-nuke bomber-types 3)
  322.   (large-nuke bomber-types 9)
  323.   (small-nuke missile-types 1)
  324.   (medium-nuke missile-types 3)
  325.   (large-nuke missile-types 9)
  326.   (nuke-types nuclear-plant 1)
  327.   ;; The capital has a bit of room for anything.
  328.   (u* capital 1)
  329.   (capital capital 100)
  330.   )
  331.  
  332. ;; Unit vs terrain.
  333.  
  334. (table vanishes-on
  335.   (land-types sea true)
  336.   (ship-types land-t* true)
  337.   ;; (allow radar and mines to be placed in the sea)
  338.   (facility-types sea true)
  339.   (capital sea true)
  340.   ;; Oil platforms can only be placed in sea cells.
  341.   (oil-platform sea false)
  342.   (oil-platform land-t* true)
  343.   ;; Units normally die in wasteland.
  344.   (u* wasteland true)
  345.   ;; Planes can fly over wasteland safely.
  346.   (plane-types wasteland false)
  347. )
  348.  
  349. (add t* capacity 16)
  350.  
  351. (table unit-size-in-terrain
  352.   (u* t* 1)
  353.   ;; Only fill 13/16 of the cell, so mobile units can pass through, but
  354.   ;; don't let multiple facilities be in a cell.
  355.   (inert-types t* 13)
  356.   (facility-types t* 13)
  357.   (capital t* 13)
  358.   )
  359.  
  360. (table terrain-storage-x
  361.   ;; Room for raw materials
  362.   (t* oil 100)
  363.   (t* iron 100)
  364.   (t* dust 10)
  365.   (t* rad 10)
  366.   ;; Room for peoples
  367.   (settled peoples 999)
  368.   )
  369.  
  370. (table unit-storage-x
  371.   (land-types food 10)
  372.   (ship-types food 100)
  373.   ;; Special-function ships.
  374.   (fishing-boat food 200)
  375.   (tanker oil 100)
  376.   (ore-ship iron 100)
  377.   (cargo-ship (sh gun lcm hcm) 100)
  378.   ;; This is not strictly part of Empire, but is needed to
  379.   ;; ensure planes' and missile' limited range.
  380.   (plane-types pet 16)
  381.   (bomber-types pet (24 48 60))
  382.   (missile-types pet (8 40 8 20))
  383.   (facility-types food 30)
  384.   (facility-types civ 10)
  385.   ;; Special-function facilities.
  386.   (agribusiness food 150)
  387.   ;; What a harbor wants to have on hand to build ships.
  388.   (harbor (lcm hcm) 200)
  389.   ;; What an airfield wants to have on hand to build aircraft.
  390.   (airfield (lcm hcm) 200)
  391.   ;; What a nuclear plant needs to have on hand to build bombs.
  392.   (nuclear-plant (oil lcm hcm rad) 999)
  393.   ;; Fuel capacities.
  394.   (land-types pet 10)
  395.   (ship-types pet 100)
  396.   (facility-types pet 10)
  397.   ;; Havens for ships and planes are able to refuel their occupants.
  398.   ((harbor airfield) pet 100)
  399.   ;; Warehouses have lots of room, but only for manufactured goods.
  400.   (warehouse manufactures 999)
  401.   ;; Combat supplies.
  402.   (artillery-types sh 100)
  403.   (fortress sh 100)
  404.   (artillery-types gun 9)
  405.   (fortress gun 9)
  406.   (land-types mil 1)
  407.   ;; Everything centers on the capital.
  408.   (capital m* 999)
  409.   )
  410.  
  411. ;;; (really need generic capacities for cargo ships)
  412.  
  413. ;;; Vision.
  414.  
  415. (add mobile-radar vision-range 6)
  416. (add radar vision-range 8)
  417.  
  418. (table see-chance
  419.   ;; do radars in empire not see ground units?
  420.   (mobile-radar land-types 0)
  421.   (radar land-types 0)
  422.   )
  423.  
  424. ;;; Actions.
  425.  
  426. (table material-to-act
  427.   ;; Ground units need soldiers to run them.
  428.   (land-types mil 1)
  429.   ;; Facilities all need civilians to run them.
  430.   (facility-types civ 1)
  431.   )
  432.  
  433. ;;; Movement.
  434.  
  435. ;(add missile-types speed 30.00)
  436.  
  437. (add inert-types speed 0)
  438. (add facility-types speed 0)
  439. (add capital speed 0)
  440.  
  441. (table mp-to-enter-terrain
  442.   ;; Don't let land units drown themselves.
  443.   (land-types sea 99)
  444.   ;; Or ships beach themselves.
  445.   (ship-types land-t* 99)
  446.   )
  447.  
  448. (table consumption-per-move
  449.   (plane-types pet 1)
  450.   ;; Should doublecheck the following against real empire.
  451.   (u* pet 1)
  452.   )
  453.  
  454. ;;; Construction.
  455.  
  456. ;; Old version
  457. (add u* cp 6)
  458.  
  459. ;; New version
  460. (add u* cp 20)
  461. (add infantry-types cp (5 5 6 6 6))
  462. (add armor-types cp (10 12 14))
  463. (add artillery-types cp (10 9 12 12 8))
  464. (add engineer-types cp (8 10))
  465. (add fighter-types cp 14)
  466. (add helicopter-types cp 10)
  467. (add bomber-types cp (14 16 18))
  468. (add missile-types cp (8 12 8 10))
  469. (add facility-types cp 14)
  470. (add transport-ship-types cp 14)
  471. (add surface-combat-ship-types cp (14 16 16 20 25 30))
  472. (add air-combat-ship-types cp (20 22 25 20 25))
  473. (add warehouse cp 6)
  474. (add capital cp 32)
  475. (add fortress cp 10)
  476.  
  477. (table acp-to-create
  478.   (engineer-types facility-types 1)
  479.   (headquarters land-types 1)
  480.   (harbor ship-types 1)
  481.   (airfield plane-types 1)
  482.   (nuclear-plant nuke-types 1)
  483.   (capital engineers 1)
  484.   )
  485.  
  486. (table acp-to-build
  487.   (engineer-types facility-types 1)
  488.   (headquarters land-types 1)
  489.   (harbor ship-types 1)
  490.   (airfield plane-types 1)
  491.   (nuclear-plant nuke-types 1)
  492.   (capital engineers 1)
  493.   )
  494.  
  495. ;; need pet/lcm/hcm to build things also.
  496.  
  497. (table consumption-per-build
  498.   (ship-types lcm 50)
  499.   (ship-types hcm 50)
  500.   (plane-types lcm 50)
  501.   (plane-types hcm 50)
  502.   (nuke-types oil (50 75 100))
  503.   (nuke-types lcm (50 75 100))
  504.   (nuke-types hcm (50 75 100))
  505.   (nuke-types rad (50 75 100))
  506.   )
  507.  
  508. (table material-to-build
  509.   ;; Need people to operate the equipment.
  510.   (u* civ 1)
  511.   ;; But engineer units *are* the people, so no extra requirement here.
  512.   (engineer-types civ 0)
  513.   )
  514.  
  515. ;;; Research.
  516.  
  517. ;; (some unit types should be higher tech than others)
  518.  
  519. ;;; Production (and consumption).
  520.  
  521. (table acp-to-produce
  522.   (refinery pet 1)
  523. ;   (lcm-factory lcm 1)
  524. ;   (hcm-factory hcm 1)
  525. ;   (shell-industry sh 1)
  526. ;   (nuclear-plant rad 1)
  527.   )
  528.  
  529. (table material-per-production
  530.   (refinery pet 100)
  531. ;   (lcm-factory lcm 100)
  532. ;   (hcm-factory hcm 100)
  533. ;   (shell-industry sh 100)
  534. ;   (nuclear-plant rad 100)
  535.   )
  536.  
  537. (table material-to-produce
  538. ;  (u* civ 1)
  539.   )
  540.  
  541. (table material-to-act
  542.   (land-types pet 1)
  543.   (plane-types pet 1)
  544.   (ship-types pet 1)
  545.   (facility-types pet 1)
  546.   (fortress mil 2)
  547.   )
  548.  
  549. ;;; Combat.
  550.  
  551. ;; Hit points are like "effectiveness" or "efficiency".
  552. (add u* hp-max 100)
  553.  
  554. (table hit-chance
  555.   (infantry-types facility-types 100)
  556.   (infantry-types fortress 50)
  557.   (infantry-types capital 100)
  558.   )
  559.  
  560. (table damage
  561.   (infantry-types facility-types 2d20)
  562.   (infantry-types capital 2d10)
  563.   )
  564.  
  565. (table capture-chance
  566.   (u* u* 0)
  567.   ;; Most facilities can't prevent their own capture.
  568.   (infantry-types facility-types 100)
  569.   ;; Fortresses are tough.
  570.   (infantry-types fortress 10)
  571.   (infantry-types capital 50)
  572.   (armor-types fortress 20)
  573.   ;; Capitals have people
  574.   (armor-types capital 70)
  575.   ;; Nuclear weapons are supposedly not captureable.
  576.   (land-types nuke-types 0)
  577.   )
  578.  
  579. (table independent-capture-chance
  580.   (u* u* 100)
  581.   (infantry-types facility-types 100)
  582.   (infantry-types fortress 80)
  583.   (infantry-types capital 80)
  584.   (armor-types facility-types 100)
  585.   (armor-types fortress 90)
  586.   (armor-types capital 90)
  587.   )
  588.  
  589. ; sea shallows swamp desert plains forest mountains ice vacuum wasteland road
  590. ;@deffn Table @code{attack-terrain-effect} u1 t -> n%
  591. (table attack-terrain-effect
  592. ;  (land-types shallows 30)
  593. ;  (land-types swamp 70)
  594. ;  (land-types forest 80)
  595. ;  (land-types mountains 60)
  596. ;  (land-types ice 90)
  597.   )
  598.   
  599. ;@deffn Table @code{defend-terrain-effect} u2 t -> n%
  600. (table defend-terrain-effect
  601. ;  (land-types shallows 50)
  602. ;  (land-types swamp 50)
  603. ;  (land-types forest 130)
  604. ;  (land-types mountains 150)
  605. ;  (land-types ice 100)
  606. ;  (land-types road 80)
  607.   )
  608.  
  609. (table protection ; actually ablation?
  610.   ;; places offer some protection to occupants
  611.   (fortress land-types 80)
  612.   (capital land-types 40)
  613.   (facility-types land-types 20)
  614.   )
  615.  
  616. (add fortress acp-to-fire 1)
  617.  
  618. (add fortress range 3)
  619.  
  620. (table consumption-per-attack
  621.   (u* sh 1)
  622.   )
  623.  
  624. (table hit-by
  625.   (u* sh 1)
  626.   )
  627.  
  628. (table material-to-attack
  629.   (u* mil 1)
  630.   (artillery-types gun 1)
  631.   (fortress gun 1)
  632.   )
  633.  
  634. ;; Nuclear detonation results in the destruction of units and the
  635. ;; creation of wasteland.
  636.  
  637. (add nuke-types acp-to-detonate 1)
  638.  
  639. (add nuke-types hp-per-detonation 100)
  640.  
  641. (table detonation-unit-range
  642.   (small-nuke u* 1)
  643.   (medium-nuke u* 2)
  644.   (large-nuke u* 3)
  645.   )
  646.  
  647. (table detonation-damage-at
  648.   (small-nuke u* 200)
  649.   (medium-nuke u* 200)
  650.   (large-nuke u* 200)
  651.   )
  652.  
  653. (table detonation-damage-adjacent
  654.   ;; Ensure that all units within range are nailed.
  655.   (small-nuke u* 1000)
  656.   (medium-nuke u* 1000)
  657.   (large-nuke u* 1000)
  658.   )
  659.  
  660. (table detonation-terrain-range
  661.   (small-nuke t* 1)
  662.   (medium-nuke t* 2)
  663.   (large-nuke t* 3)
  664.   )
  665.  
  666. (table detonation-terrain-damage-chance
  667.   (nuke-types t* 100)
  668.   (nuke-types sea 0)
  669.   )
  670.  
  671. (table terrain-damaged-type
  672.   (t* wasteland 1)
  673.   )
  674.  
  675. ;;; Terrain alteration.
  676.  
  677. (table acp-to-add-terrain
  678.   (engineer-types settled 1)
  679.   (engineer-types highway 1)
  680.   )
  681.  
  682. (table acp-to-remove-terrain
  683.   (engineer-types wilderness 1)
  684.   (engineer-types highway 1)
  685.   )
  686.  
  687. ;;; Backdrop.
  688.  
  689. (table base-production
  690.   ((agribusiness fishing-boat) food (100 50))
  691.   ((oil-field oil-platform) oil 1)  ;  should be extraction really
  692.   (refinery pet 1)
  693.   (enlistment mil 1)
  694. ;  (refinery pet 100)
  695. ;  (lcm-factory lcm 100)
  696. ;  (hcm-factory hcm 100)
  697.   ;; The capital always has a few small farms and factories.
  698.   (capital (food lcm hcm) (20 10 10))
  699.   (capital (civ mil) 1)
  700.   )
  701.  
  702. (table base-consumption
  703.   ;; Everything eats food.
  704.   (u* food 1)
  705.   (agribusiness food 0) ; a hack
  706.   (nuke-types food 0) ; does this happen in Empire?
  707.   ;; Capital is self-supporting, but has no excess.
  708.   (capital food 20)
  709.   ;; Most hardware eats petroleum products.
  710.   (ship-types pet 1)
  711.   (plane-types pet 1)
  712.   ;; Inert types don't consume anything at all.
  713.   (inert-types m* 0)
  714.   )
  715.  
  716. (table hp-per-starve
  717.   ;; Going without food is potentially deadly.
  718.   (u* food 1.00)
  719.   ;; Technology types really need their petroleum products.
  720.   (ship-types pet 10.00)
  721.   (plane-types pet 100.00)
  722.   )
  723.  
  724. (table out-length
  725.   ;; This is to simplify basic game play.
  726.   (u* m* 1)
  727.   ;; Farming has a default supply infrastructure.
  728.   (agribusiness food 5)
  729.   ;; Fishing fleets must rely on land systems to redistribute.
  730.   (fishing-boat food 1)
  731.   ;; The oil business' support machinery can get the oil sent around.
  732.   (oil-field oil 5)
  733.   (oil-platform oil 5)
  734.   ;; Civilians will tend to go where they're needed (looking for jobs).
  735.   (facility-types civ 2)
  736.   ;; Factories want to unload their manufactures as fast as possible.
  737.   (refinery pet 5)
  738.   (lcm-factory lcm 5)
  739.   (hcm-factory hcm 5)
  740.   ;; Warehouses are redistribution points.
  741.   (warehouse m* 5)
  742.   ;; Capital will be generous with nearby needy units.
  743.   (capital m* 2)
  744.   )
  745.  
  746. (table in-length
  747.   ;; This is to simplify basic game play.
  748.   (u* m* 1)
  749.   ;; Every type of unit that needs food can get it from an adjacent cell.
  750.   (u* food 1)
  751.   ;; Similarly for petroleum.
  752.   (u* pet 2)
  753.   ;; Civilians will tend to go where they're needed (looking for jobs).
  754.   (facility-types civ 2)
  755.   ;; Facilities want to pull in whatever they need for their work.
  756.   (harbor (lcm hcm) 5)
  757.   (airfield (lcm hcm) 5)
  758.   ;; Warehouses are redistribution points.
  759.   (warehouse m* 5)
  760.   ;; The capital always gets special service if it needs something.
  761.   (capital m* 5)
  762.   )
  763.  
  764. ;;; Random setup.
  765.  
  766. ;;; Everybody starts with just the one capital.
  767.  
  768. (add capital start-with 1)
  769.  
  770. (add (sea settled wilderness mountains) alt-percentile-min (  0  70 70  95))
  771. (add (sea settled wilderness mountains) alt-percentile-max ( 70  75 95 100))
  772. (add t* wet-percentile-min 0)
  773. (add t* wet-percentile-max 100)
  774. (add settled wet-percentile-min 40)
  775. (add settled wet-percentile-max 60)
  776.  
  777. (table favored-terrain
  778.   (u* t* 0)
  779.   (capital settled 100)
  780.   (facility-types settled 100)
  781.   )
  782.  
  783. ;; A game's starting units will be full by default.
  784.  
  785. (table unit-initial-supply
  786.   (u* m* 9999)
  787.   ;; ...but with minimal soldiers.
  788.   (u* mil 1)
  789.   )
  790.  
  791. (table terrain-initial-supply
  792.   (t* oil 100)
  793.   (t* iron 100)
  794.   (t* dust 1)  ; should be rare but high concentration randomly
  795.   (t* rad 1)
  796.   )
  797.  
  798. ;; Allow from 1 to many sides to play.
  799.  
  800. (set sides-min 1)
  801. ; The program complains if this is higher than the compiled-in limit,
  802. ; although in this case it should probably silently accept the GDL
  803. ; value and then complain only if too many actual sides get added.
  804. ;(set sides-max 30)
  805. (set sides-max 15)
  806.  
  807. (game-module (instructions (
  808.   "Build up your country and materials."
  809.   "Create engineers in your capital, then send them out to clear the"
  810.   "land and build farms, factories, harbors, roads, and so forth."
  811.   ""
  812.   "If you can't live in peace with your neighbors,"
  813.   "then be prepared to fight with them."
  814.   )))
  815.  
  816. (game-module (design-notes (
  817.   "Scale is unimportant, this is an abstract game."
  818.   ""
  819.   "This is not entirely like True Empire, but it has some of the feel;"
  820.   "and the complexity!"
  821.   ""
  822.   "This game is supposed to be an emulation.  If you don't like the
  823.    way True Empire works, don't mess with this game; either work with
  824.    `modern' if you're looking for more realism and scaling, or else
  825.    set up a new game design."
  826.   "Some of the differences are concessions to Xconq's limits."
  827.   "You cannot just designate `sectors', you have to have units for
  828.    them, and then you have to have a unit (engineers) to build."
  829.   )))
  830.